DC motors are manufactured which have a rotor element including permanent magnets having a plurality of successively spaced north and south poles. The permanent magnet is disposed proximate a fixed stator element having a plurality of windings or coils for producing magnetic fields when current is conducted therein. By selectively energizing the coils, magnetic fields are generated which impart forces on the magnetic fields emanating from the poles of the rotor magnet to produce rotation of the rotor. Commonly, Hall effect sensors are located in fixed relation to the coils and disposed proximate the rotor magnet to sense the relative position of the poles on the rotor magnet. Signals from the Hall sensors are employed to phase the energization of the coils to produce efficient operation of the motor.
It is known to control the speed of such motors by comparing the rate of revolution thereof to a known frequency such as from a stable oscillator and adaptively adjusting the motor drive parameters to eliminate the frequency error therebetween. Typically, the output of such control or servo systems are applied to adjust either the bias potential of the commutating Hall sensors or the supplied potential to the coil driver.
One such system is described in U.S. patent application Ser. No. 405,441 filed on Aug. 5, 1982, in the name of K. C. Kelleher et al. In this system a simplified servo system uses a microprocessor to perform phase comparison and servo loop filtering, Hall effect sensors to provide commutation signals and rotor rotation, and coil drivers for energizing the coils. Speed is controlled by varying the duration of the stator coil drive pulses. The initiation of the stator coil drive pulses is delayed from the normal commutation point (i.e., the Hall sensor transition) proportional to the speed error signal and the termination of the drive pulses is determined by the Hall sensor transitions. The error signal is processed digitally in the microprocessor, via software, to produce a second order servo function so that there are no accumulated errors.
In accordance with this prior art microprocessor-based system the coil current source is an integrator which produces a triangular current pulse which effects a torque in the motor proportional to the square of the input pulse width. Using a triangular current pulse to drive the motor can cause some problems in the system. Since the power to the motor is related to the area under the current pulse curve and the power delivered to the motor is based on the Hall sensor output the pulse width delivered to the motor must be the square root of the error signal calculated from the Hall sensor output. Thus to determine the pulse width necessary to maintain the desired speed the microprocessor must be capable of performing a square root function. The square root operation in a 4-bit microprocessor is a comlex operation requiring substantial memory and, therefore, a DC motor system of the Kelleher et al. type must use a more expensive microprocessor. Furthermore, the triangular current pulse causes some problems because some AC ripple is introduced into the system. This AC ripple can generate motor and timebase errors which could introduce acoustical noise in a turntable used for audio playback, e.g., an audio turntable or a video disc player.